// filePath：content-web/src/main/java/com/tarena/lbs/content/service/CategoryService.java
package com.tarena.lbs.content.service;

import com.tarena.lbs.base.protocol.exception.BusinessException;
import com.tarena.lbs.base.protocol.pager.PageResult;
import com.tarena.lbs.content.pojo.param.ArticleCategoryParam;
import com.tarena.lbs.content.pojo.query.ArticleCategoryQuery;
import com.tarena.lbs.content.pojo.vo.ArticleCategoryVO;

public interface CategoryService {

    /**
     * 新增文章分类
     * @param param 分类参数
     */
    void addCategory(ArticleCategoryParam param)throws BusinessException;

    /**
     * 分页查询分类列表
     * @param query 查询条件
     * @return 分页结果
     */
    PageResult<ArticleCategoryVO> pageList(ArticleCategoryQuery query)throws BusinessException;

    /**
     * 修改分类状态
     * @param id 分类ID
     * @param categoryStatus 目标状态（1=启用，2=禁用）
     */
    void updateStatus(Integer id, Integer categoryStatus) throws BusinessException;



    /**
     * 删除分类
     * @param id 分类ID
     */
    void deleteCategory(Integer id) throws BusinessException;
}